package com.chj.comp.service.demo1.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;

import com.chj.comp.common.db.util.AesTypeHandler;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

/**
 * <p>
 *
 * </p>
 *
 * @author cuihui
 * @since 2022-02-15
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "demo1_scheduler_job", autoResultMap = true)
@ApiModel(value="Demo1SchedulerJob对象", description="")
public class Demo1SchedulerJob extends Model<Demo1SchedulerJob> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "job_id", type = IdType.INPUT)
    private String jobId;

    @TableField(value = "job_name", typeHandler = AesTypeHandler.class)
    private String jobName;

    @TableField("year")
    private String year;

    @TableField("month")
    private String month;

    @TableField("day")
    private String day;

    @TableField("hour")
    private String hour;

    @TableField("minute")
    private String minute;

    @TableField("second")
    private String second;

    @ApiModelProperty(value = "任务开关 0-关闭 1-开启")
    @TableField("is_flag")
    private String isFlag;

    @TableField("create_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "邮件通知 0-禁用 1-开启 2-关闭")
    @TableField("email_notice")
    private String emailNotice;

    @ApiModelProperty(value = "邮件通知描述")
    @TableField("email_notice_desc")
    private String emailNoticeDesc;

    @ApiModelProperty(value = "短信通知 0-禁用 1-开启 2-关闭")
    @TableField("message_notice")
    private String messageNotice;

    @ApiModelProperty(value = "短信通知描述通知描述")
    @TableField("message_notice_desc")
    private String messageNoticeDesc;


    @Override
    protected Serializable pkVal() {
        return this.jobId;
    }

}
